Packet gateway selection based on device capabilities

ABSTRACT

Methods, apparatus, and systems for selecting appropriate gateway servers for user devices with different device capabilities are disclosed. In one example aspect, a wireless communication method includes provisioning multiple wireless electronic devices of a user with a first access point name, and receiving, from a wireless electronic device of the multiple wireless electronic devices of the user, a request for establishing a data session. The method also includes determining, in part based on a capability of the wireless electronic device, a second access point name that is different from the first access point name and selecting a packet gateway server corresponding to the capability of the wireless electronic device using the second access point name. The method further includes establishing the data session between the packet gateway server and the wireless electronic device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.17/004,952, filed Aug. 27, 2020, entitled PACKET GATEWAY SELECTION BASEDON DEVICE CAPABILITIES, which is hereby incorporated by reference in itsentirety.

BACKGROUND

A gateway server is used in telecommunications networks to allow data toflow from one discrete network to another. A user device can havesimultaneous connectivity with one or more gateway servers for accessingmultiple data networks. Selection of the gateway servers can impactvarious aspects of the communication, such as reliability, efficiency,and/or latency, thereby affecting the overall user experience.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example architecture of Evolved Packet Core (EPC)in Long-Term Evolution (LTE) communication systems.

FIG. 2 illustrates an example EPS and Fifth-Generation Core (5GC)interworking in accordance with the present technology.

FIG. 3 is a flowchart representation of a method for wirelesscommunication in accordance with one or more embodiments of the presenttechnology.

FIG. 4 is a diagrammatic representation of a machine in the example formof a computer system within which a set of instructions, for causing themachine to perform any one or more of the methodologies or modulesdiscussed herein, can be executed.

DETAILED DESCRIPTION

In wireless communications, the architecture of the General Packet RadioService (GPRS) relies on circuit-switching. That is, circuits areestablished between the calling parties throughout the telecommunicationnetwork. To facilitate more flexible data transmissions,packet-switching is added to circuit-switching so that data istransported in packets without the establishment of dedicated circuits.Because packet-switching offers more flexibility and efficiency, theInternet Protocol (IP) is used in Fourth-Generation (4G) Long-TermEvolution (LTE) systems as the protocol to transport all services,eliminating the need for separate circuit domain and packet domain. FIG.1 illustrates an example architecture of Evolved Packet Core (EPC) 100in LTE communication systems. As shown in FIG. 1 , a User Equipment (UE)101 is connected to the EPC over an access network (e.g., the EvolvedUniversal Mobile Telecommunication Service Terrestrial Radio AccessNetwork, E-UTRAN) 103 that includes one or more base stations (eNodeB)105. The EPC 107 comprises four main elements: the Serving Gateway (SGW)112, the Packet Data Network Server (PGW) 114, the Mobility ManagementEntity (MME) 116, and the Home Subscriber Server (HSS) 118. Inparticular, the PGW 114 is the gateway server that routes packets to andfrom the Packet Data Network (PDN). The PGW 114 also performs variousother functions such as IP allocation or policy control.

With the advancement in wireless technologies, the 5G/New Radio (NR)wireless protocol can support data connectivity and services enablingdeployments. In particular, the 5G core (5GC) network architectureenables a separation of the gateway functions into control plane (CP)and user plane (UP). The CP and UP separation (also referred to CP-UPsplit) allows for flexible deployment of UP separate from the CP andenables UP distribution and edge breakout of traffic already in the EPC.For example, separate PDN connections can use different PGW-U/PGW-Us incentral and local deployments.

During the migration period when NR coverage is expanding, servicesrequiring wide-area coverage are best supported through interworkingbetween the 5G Core (5GC) and the existing Evolved Packet Core (EPC). Toenable IP address preservation when connecting over and changing between4G and 5G access, the 5GC architecture includes a common UP anchor point(e.g., by the session management function (SMF) plus packet data networkgateway control plane function (SMF+PGW-C) and the user plane function(UPF) plus PGW user plane function (UPF+PGW-U). FIG. 2 illustrates anexample of EPS-5GC interworking in accordance with the presenttechnology.

As the wireless technologies evolve, capabilities of the user devicesalso evolve at the same time. To provide simultaneous support formultiple generations of technologies (e.g., 4G/LTE, 5G/NR, and otherfuture generations of wireless technologies), a network deployment needsto support newer and legacy devices at the same time. For example, asshown in FIG. 2 , a UE that has both 4G/LTE and 5G/NR capabilities canbe anchored to either the LTE PGW 201 via the E-UTRAN or the 5GUPF+PGW-U 203 via the New Generation Radio Access Network (NG-RAN). Insome embodiments, it is desirable for a network operator to anchor auser device to certain packet gateways according to the devicecapabilities. For example, anchoring the 5G-capable device to UPF+PGW-Ufor 5GC can minimize communication latency, thereby providing betteruser experiences for the user.

User devices are often provisioned on a per-user basis by networkoperators. That is, under the Domain Name Server (DNS) resolutionmechanism, a user can be provisioned with a set of unique Access PointNames (APNs) for the associated devices so that data sessions usingthese APNs can be anchored on corresponding PGWs. However, a user canhave devices with different capabilities (e.g., devices that support 3Gand/or LTE technologies only, and devices that support 5G). When theuser changes from an LTE device to a 5G device to access the network,the data sessions anchored on a previous set of gateways (e.g., PGWs forEPC) cannot provide optimal connections for the 5G device.

This patent document discloses techniques that can be implemented invarious embodiments to allow flexible selections of gateway servers toanchor the user devices to appropriate gateway servers according todevice capabilities. The disclosed techniques introduce minimal changesto the existing provisioning mechanism and DNS resolution framework,while enabling optimal connections and providing better userexperiences.

FIG. 3 is a flowchart representation of a method 300 for wirelesscommunication in accordance with one or more embodiments of the presenttechnology. The method 300 includes, at operation 310, provisioningmultiple wireless electronic devices of a user with a first access pointname (APN). For example, the wireless electronic devices of the user canbe provisioned with a generic data APN (e.g., internet.domain.com) whenthe user signs up for service. In some embodiments, the generic data APNis not associate with any access technologies. That is, the generic dataAPN serves as a placeholder for the user. The actual APNs that are usedto anchor the data sessions are determined subsequently in part based onthe capabilities and user's devices. In some embodiments, the genericdata APN can correspond to a first gateway server associated with afirst radio access technology (e.g., a default gateway server with adefault access technology). For example, the generic data APN cancorrespond to the PGW in EPC for LTE wireless communications.

The method 300 includes, at operation 320, receiving, from a wirelesselectronic device of the user, a request for establishing a datasession. Once the user is provisioned with the first APN (e.g., thegeneric data APN), all requests from the user for a data session areassociated with the first APN initially. In some embodiments, themultiple wireless electronic devices of the user have differentcapabilities. For example, some of the electronic devices of the userhave 4G capabilities while some of the wireless electronic devices ofthe user can have both 4G and 5G capabilities. The network can maintaina list of alternative or alias APNs that are mapped to the capabilitiesof the devices of the user and/or the corresponding access technologies.In some embodiments, the capability of the wireless electronic device isindicated based on a unique identifier of the device. The capability ofthe wireless electronic device can indicate a radio access technologythat is supported by the wireless electronic device. For example, theInternational Mobile Equipment Identify (IMEI) of the device can be usedto identify the device capabilities. Table 1 shows an example mapping ofthe device IMEI, the radio access technologies (RATs), and alias APNs.

TABLE 1 Device Identifier RAT Alias APN IMEI range A (e.g. 2G/3G 2GaliasAPN1.domain.com capable devices) IMEI range A (e.g. 2G/3G 3GaliasAPN2.domain.com capable devices) IMEI range B (e.g. 4G only 4GaliasAPN3.domain.com devices) IMEI range C (e.g. 4G/5G 4GaliasAPN3.domain.com devices) IMEI range C (e.g. 4G/5G 5GaliasAPN4.domain.com devices)

The method 300 includes, at operation 330, determining, in part based ona capability of the wireless electronic device, a second access pointname that is different from the first access point name. Given therequest from specific device of the user and the list of alias APNs, thenetwork can use the IMEI of the device to determine which alias APN isto be used for the selection of the packet gateway.

In some embodiments, the determining of the second access point name isalso based on the access technology over which the request is received.For example, the IMEI of a device is within the range C, which indicatesthat the device supports both 4G and 5G capabilities. The request fromthe device is received using the 4G RAT. Therefore, the alias APN to beused for the data session is aliasAPN3.domain.com for 4G communications.As another example, the IMEI of another device is also within the rangeC for both 4G and 5G capable devices. The request from the device isreceived using the 5G RAT. Therefore, the alias APN to be used for thedata session is aliasAPN4.domain.com for 5G communications.

In some embodiments, the determining of the second access point name isfurther based on load balancing of the network. For example, the IMEI ofa device is within the range C, which indicates that the device supportsboth 4G and 5G capabilities. The network determines that the EPC carriesa load of 20% and the 5GC carries a load of 80%. A PWG in the EPC can beselected to establish the data session to avoid potentially servicelatency caused by the heavy load of 5GC. Therefore, the alias APN to beused for the data session is aliasAPN3.domain.com for LTEcommunications.

In some embodiments, the determining of the second access point name canbe based on specific device families. For example, a specific APNaliasAPN1.domain.com can be assigned to Android devices with 2G/3Gcapacities. A different APN aliasAPN2.domain.com can be assigned to iOSdevices with the same 2G/3G capabilities. A third APNaliasAPN3.domain.com can be assigned to iOS devices with differentcapacities (e.g., 4G or 5G capabilities).

The method 300 includes, at operation 340, selecting a second packetgateway server corresponding to the capability of the wirelesselectronic device using the second access point name. Once the alias APNis determined, a DNS query can be performed using the alias APN asopposed to the initially provisioned generic data APN from the device.The IP address of the selected packet gateway server can be returned inthe DNS response. It is noted that the use of alias APNs imposes nochanges in the existing DNS framework. That is, the DNS queries andresponses can be agnostic about the generic data APN and the alias APNs.Specific information regarding the device capabilities and/or RATs canthus be hidden from the DNS framework and does not result in anyadditional DNS queries. In some embodiments, when changes to theexisting DNS entries are allowed, the DNS query can include a part ofthe device IMEI, such as the Type Allocation Code (TAC). The TAC can beused to identify a particular model and/or a revision of the device sothat specific gateway can be selected based on device families.

In some embodiments, the second packet gateway server is associated asecond radio access technology that is different than the first radioaccess technology. For example, given the alias APNaliasAPN4.domain.com, a PGW-U for 5GC can be selected for the devicethat is capable of handling both 4G and 5G communications. Here, thesecond RAT (e.g., 5G RAT) is different than the default RAG (e.g., 4GRAT) for the generic data APN for the user.

The method 300 also includes, at operation 350, establishing the datasession between the second packet gateway server and the wirelesselectronic device. Given the IP address in the DNS response, the datasession can be established accordingly. The user device is now providedwith connecting to the network via the data session to transmit and/orreceive data.

CONCLUSION

As noted above, the disclosed techniques can be implemented, withminimal changes to the existing DNS framework, to select appropriategateway servers to anchor data traffic for user devices based on devicecapabilities. For devices with better capabilities (e.g., 5G capabledevices), appropriate packet data gateways can be used to minimizeservice latency and delay, thereby providing better overall userexperiences to the user. Based on the existing per-user provisioningmechanism, the disclosed techniques allow flexible gatewaydeterminations for different devices of the same user.

FIG. 4 is a diagrammatic representation of a machine in the example formof a computer system 400 within which a set of instructions, for causingthe machine to perform any one or more of the methodologies or modulesdiscussed herein, can be executed. In the example of FIG. 4 , thecomputer system 400 includes a processor, memory, non-volatile memory,and a network communication interface device. Various common components(e.g., cache memory) are omitted for illustrative simplicity. Thecomputer system 400 is intended to illustrate a hardware device on whichany of the components described in the example of FIGS. 1-8 (and anyother components described in this specification) can be implemented.The computer system 400 can be of any applicable known or convenienttype. The components of the computer system 400 can be coupled togethervia a bus or through some other known or convenient device.

This disclosure contemplates the computer system 400 taking any suitablephysical form. As example and not by way of limitation, computer system400 can be an embedded computer system, a system-on-chip (SOC), asingle-board computer system (SBC) (such as, for example, acomputer-on-module (COM) or system-on-module (SOM)), a desktop computersystem, a laptop or notebook computer system, an interactive kiosk, amainframe, a mesh of computer systems, a mobile telephone, a personaldigital assistant (PDA), a server, or a combination of two or more ofthese. Where appropriate, computer system 400 can include one or morecomputer systems 400; be unitary or distributed; span multiplelocations; span multiple machines; or reside in a cloud, which caninclude one or more cloud components in one or more networks. Whereappropriate, one or more computer systems 400 can perform withoutsubstantial spatial or temporal limitation one or more steps of one ormore methods described or illustrated herein. As an example and not byway of limitation, one or more computer systems 400 can perform in realtime or in batch mode one or more steps of one or more methods describedor illustrated herein. One or more computer systems 400 can perform atdifferent times or at different locations one or more steps of one ormore methods described or illustrated herein, where appropriate.

The processor can be, for example, a conventional microprocessor such asan Intel Pentium microprocessor or Motorola power PC microprocessor. Oneof skill in the relevant art will recognize that the terms“machine-readable (storage) medium” or “computer-readable (storage)medium” include any type of device that is accessible by the processor.

The memory is coupled to the processor by, for example, a bus. Thememory can include, by way of example but not limitation, random accessmemory (RAM), such as dynamic RAM (DRAM) and static RAM (SRAM). Thememory can be local, remote, or distributed.

The bus also couples the processor to the non-volatile memory and driveunit. The non-volatile memory is often a magnetic floppy or hard disk, amagnetic-optical disk, an optical disk, a read-only memory (ROM), suchas a CD-ROM, EPROM, or EEPROM, a magnetic or optical card, or anotherform of storage for large amounts of data. Some of this data is oftenwritten, by a direct memory access process, into memory during executionof software in the computer 400. The non-volatile storage can be local,remote, or distributed. The non-volatile memory is optional becausesystems can be created with all applicable data available in memory. Atypical computer system will usually include at least a processor,memory, and a device (e.g., a bus) coupling the memory to the processor.

Software is typically stored in the non-volatile memory and/or the driveunit. Indeed, storing and entire large program in memory can not even bepossible. Nevertheless, it should be understood that for software torun, if necessary, it is moved to a computer readable locationappropriate for processing, and for illustrative purposes, that locationis referred to as the memory in this paper. Even when software is movedto the memory for execution, the processor will typically make use ofhardware registers to store values associated with the software, andlocal cache that, ideally, serves to speed up execution. As used herein,a software program is assumed to be stored at any known or convenientlocation (from non-volatile storage to hardware registers) when thesoftware program is referred to as “implemented in a computer-readablemedium.” A processor is considered to be “configured to execute aprogram” when at least one value associated with the program is storedin a register readable by the processor.

The bus also couples the processor to the network interface device. Theinterface can include one or more of a modem or network interface. Itwill be appreciated that a modem or network interface can be consideredto be part of the computer system 400. The interface can include ananalog modem, ISDN modem, cable modem, token ring interface, satellitetransmission interface (e.g., “direct PC”), or other interfaces forcoupling a computer system to other computer systems. The interface caninclude one or more input and/or output devices. The I/O devices caninclude, by way of example but not limitation, a keyboard, a mouse orother pointing device, disk drives, printers, a scanner, and other inputand/or output devices, including a display device. The display devicecan include, by way of example but not limitation, a cathode ray tube(CRT), liquid crystal display (LCD), or some other applicable known orconvenient display device. For simplicity, it is assumed thatcontrollers of any devices not depicted in the example of FIG. 5 residein the interface.

In operation, the computer system 400 can be controlled by operatingsystem software that includes a file management system, such as a diskoperating system. One example of operating system software withassociated file management system software is the family of operatingsystems known as Windows® from Microsoft Corporation of Redmond,Washington, and their associated file management systems. Anotherexample of operating system software with its associated file managementsystem software is the Linux™ operating system and its associated filemanagement system. The file management system is typically stored in thenon-volatile memory and/or drive unit and causes the processor toexecute the various acts required by the operating system to input andoutput data and to store data in the memory, including storing files onthe non-volatile memory and/or drive unit.

Some portions of the detailed description can be presented in terms ofalgorithms and symbolic representations of operations on data bitswithin a computer memory. These algorithmic descriptions andrepresentations are the means used by those skilled in the dataprocessing arts to most effectively convey the substance of their workto others skilled in the art. An algorithm is here, and generally,conceived to be a self-consistent sequence of operations leading to adesired result. The operations are those requiring physicalmanipulations of physical quantities. Usually, though not necessarily,these quantities take the form of electrical or magnetic signals capableof being stored, transferred, combined, compared, and otherwisemanipulated. It has proven convenient at times, principally for reasonsof common usage, to refer to these signals as bits, values, elements,symbols, characters, terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar termsare to be associated with the appropriate physical quantities and aremerely convenient labels applied to these quantities. Unlessspecifically stated otherwise as apparent from the following discussion,it is appreciated that throughout the description, discussions utilizingterms such as “processing” or “computing” or “calculating” or“determining” or “displaying” or “generating” or the like, refer to theaction and processes of a computer system, or similar electroniccomputing device, that manipulates and transforms data represented asphysical (electronic) quantities within the computer system's registersand memories into other data similarly represented as physicalquantities within the computer system memories or registers or othersuch information storage, transmission or display devices.

The algorithms and displays presented herein are not inherently relatedto any particular computer or other apparatus. Various general purposesystems can be used with programs in accordance with the teachingsherein, or it can prove convenient to construct more specializedapparatus to perform the methods of some embodiments. The requiredstructure for a variety of these systems will appear from thedescription below. In addition, the techniques are not described withreference to any particular programming language, and variousembodiments can thus be implemented using a variety of programminglanguages.

In alternative embodiments, the machine operates as a standalone deviceor can be connected (e.g., networked) to other machines. In a networkeddeployment, the machine can operate in the capacity of a server or aclient machine in a client-server network environment, or as a peermachine in a peer-to-peer (or distributed) network environment.

The machine can be a server computer, a client computer, a personalcomputer (PC), a tablet PC, a laptop computer, a set-top box (STB), apersonal digital assistant (PDA), a cellular telephone, an iPhone, aBlackberry, a processor, a telephone, a web appliance, a network router,switch or bridge, or any machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine.

While the machine-readable medium or machine-readable storage medium isshown in an exemplary embodiment to be a single medium, the term“machine-readable medium” and “machine-readable storage medium” shouldbe taken to include a single medium or multiple media (e.g., acentralized or distributed database, and/or associated caches andservers) that store the one or more sets of instructions. The term“machine-readable medium” and “machine-readable storage medium” shallalso be taken to include any medium that is capable of storing, encodingor carrying a set of instructions for execution by the machine and thatcause the machine to perform any one or more of the methodologies ormodules of the presently disclosed technique and innovation.

In general, the routines executed to implement the embodiments of thedisclosure, can be implemented as part of an operating system or aspecific application, component, program, object, module or sequence ofinstructions referred to as “computer programs.” The computer programstypically comprise one or more instructions set at various times invarious memory and storage devices in a computer, and that, when readand executed by one or more processing units or processors in acomputer, cause the computer to perform operations to execute elementsinvolving the various aspects of the disclosure.

Moreover, while embodiments have been described in the context of fullyfunctioning computers and computer systems, those skilled in the artwill appreciate that the various embodiments are capable of beingdistributed as a program product in a variety of forms, and that thedisclosure applies equally regardless of the particular type of machineor computer-readable media used to actually effect the distribution.

Further examples of machine-readable storage media, machine-readablemedia, or computer-readable (storage) media include but are not limitedto recordable type media such as volatile and non-volatile memorydevices, floppy and other removable disks, hard disk drives, opticaldisks (e.g., Compact Disk Read-Only Memory (CD ROMS), Digital VersatileDisks, (DVDs), etc.), among others, and transmission type media such asdigital and analog communication links.

In some circumstances, operation of a memory device, such as a change instate from a binary one to a binary zero or vice-versa, for example, cancomprise a transformation, such as a physical transformation. Withparticular types of memory devices, such a physical transformation cancomprise a physical transformation of an article to a different state orthing. For example, but without limitation, for some types of memorydevices, a change in state can involve an accumulation and storage ofcharge or a release of stored charge. Likewise, in other memory devices,a change of state can comprise a physical change or transformation inmagnetic orientation or a physical change or transformation in molecularstructure, such as from crystalline to amorphous or vice versa. Theforegoing is not intended to be an exhaustive list in which a change instate for a binary one to a binary zero or vice-versa in a memory devicecan comprise a transformation, such as a physical transformation.Rather, the foregoing is intended as illustrative examples.

A storage medium typically can be non-transitory or comprise anon-transitory device. In this context, a non-transitory storage mediumcan include a device that is tangible, meaning that the device has aconcrete physical form, although the device can change its physicalstate. Thus, for example, non-transitory refers to a device remainingtangible despite this change in state.

Unless the context clearly requires otherwise, throughout thedescription and the claims, the words “comprise,” “comprising,” and thelike are to be construed in an inclusive sense, as opposed to anexclusive or exhaustive sense; that is to say, in the sense of“including, but not limited to.” As used herein, the terms “connected,”“coupled,” or any variant thereof means any connection or coupling,either direct or indirect, between two or more elements; the coupling orconnection between the elements can be physical, logical, or acombination thereof. Additionally, the words “herein,” “above,” “below,”and words of similar import, when used in this application, refer tothis application as a whole and not to any particular portions of thisapplication. Where the context permits, words in the above DetailedDescription using the singular or plural number may also include theplural or singular number respectively. The word “or” in reference to alist of two or more items covers all of the following interpretations ofthe word: any of the items in the list, all of the items in the list,and any combination of the items in the list.

The above Detailed Description of examples of the invention is notintended to be exhaustive or to limit the invention to the precise formdisclosed above. While specific examples for the invention are describedabove for illustrative purposes, various equivalent modifications arepossible within the scope of the invention, as those skilled in therelevant art will recognize. For example, while processes or blocks arepresented in a given order, alternative implementations may performroutines having steps, or employ systems having blocks, in a differentorder, and some processes or blocks may be deleted, moved, added,subdivided, combined, and/or modified to provide alternative orsub-combinations. Each of these processes or blocks may be implementedin a variety of different ways. Also, while processes or blocks are attimes shown as being performed in series, these processes or blocks mayinstead be performed or implemented in parallel, or may be performed atdifferent times. Further any specific numbers noted herein are onlyexamples: alternative implementations may employ differing values orranges.

The teachings of the invention provided herein can be applied to othersystems, not necessarily the system described above. The elements andacts of the various examples described above can be combined to providefurther implementations of the invention. Some alternativeimplementations of the invention may include not only additionalelements to those implementations noted above, but also may includefewer elements.

Any patents and applications and other references noted above, and anythat may be listed in accompanying filing papers, are incorporatedherein by reference in the entirety, except for any subject matterdisclaimers or disavowals, and except to the extent that theincorporated material is inconsistent with the express disclosureherein, in which case the language in this disclosure controls. Aspectsof the invention can be modified to employ the systems, functions, andconcepts of the various references described above to provide yetfurther implementations of the invention.

These and other changes can be made to the invention in light of theabove Detailed Description. While the above description describescertain examples of the invention, and describes the best modecontemplated, no matter how detailed the above appears in text, theinvention can be practiced in many ways. Details of the system may varyconsiderably in its specific implementation, while still beingencompassed by the invention disclosed herein. As noted above,particular terminology used when describing certain features or aspectsof the invention should not be taken to imply that the terminology isbeing redefined herein to be restricted to any specific characteristics,features, or aspects of the invention with which that terminology isassociated. In general, the terms used in the following claims shouldnot be construed to limit the invention to the specific examplesdisclosed in the specification, unless the above Detailed Descriptionsection explicitly defines such terms. Accordingly, the actual scope ofthe invention encompasses not only the disclosed examples, but also allequivalent ways of practicing or implementing the invention under theclaims.

To reduce the number of claims, certain aspects of the invention arepresented below in certain claim forms, but the applicant contemplatesthe various aspects of the invention in any number of claim forms. Forexample, while only one aspect of the invention is recited as ameans-plus-function claim under 35 U.S.C. § 112(f), other aspects maylikewise be embodied as a means-plus-function claim, or in other forms,such as being embodied in a computer-readable medium. (Any claimsintended to be treated under 35 U.S.C. § 112(f) will begin with thewords “means for”, but use of the term “for” in any other context is notintended to invoke treatment under 35 U.S.C. § 112(f).) Accordingly, theapplicant reserves the right to pursue additional claims after filingthis application to pursue such additional claim forms, in either thisapplication or in a continuing application.

The invention claimed is:
 1. A computer-implemented method for wirelesscommunication, comprising: assigning a first access point name tomultiple user devices of a user, wherein the first access point namecorresponds to a first gateway server associated with a first radioaccess technology; determining, based on a capability of a user deviceof the multiple user devices, a second access point name that isdifferent from the first access point name; selecting a second gatewayserver corresponding to the capability of the user device using thesecond access point name, wherein the second gateway server isassociated with a second radio access technology that is different thanthe first radio access technology, and wherein the first gateway serverand the second gateway server are both associated with a network; andestablishing a data session between the second gateway server and theuser device.
 2. The method of claim 1, wherein at least a first userdevice of the user has a different capability from a second user deviceof the user.
 3. The method of claim 1, further comprising: storing acorrespondence between identifiers of the multiple user devices, radioaccess technologies supported by the multiple user devices, andcorresponding access point names, wherein the determining of the secondaccess point name is based on a unique identifier of the user devicethat indicates the capability of the user device.
 4. The method of claim1, further comprising: receiving, from the user device, a request forestablishing the data session, wherein the determining of the secondaccess point name is based on an access technology over which therequest is received.
 5. The method of claim 1, wherein the determiningof the second access point name is based on load balancing acrossdifferent access technologies in the network.
 6. The method of claim 1,wherein the determining of the second access point name is based on adevice family to which the user device belongs.
 7. The method of claim1, wherein selecting the second gateway server comprises: transmitting adomain name server query using the second access point name; andreceiving an address of the second gateway server in response to thedomain name server query.
 8. The method of claim 7, wherein the domainname server query comprises part of a unique identifier of the userdevice that identifies a model of a revision of the user device.
 9. Asystem configured for use with a wireless telecommunications network,comprising: at least one processor; and at least one memory storinginstructions, when executed by the at least one processor, configure theat least one processor to: assign a first access point name to a userdevice, wherein the first access point name corresponds to a firstgateway server associated with a first radio access technology;determine, based on a capability of the user device, a second accesspoint name that is different from the first access point name; select asecond gateway server corresponding to the capability of the user deviceusing the second access point name, wherein the second gateway server isassociated a second radio access technology that is different than thefirst radio access technology, and wherein the first gateway server andthe second gateway server are both associated with a network; andestablish a data session between the second gateway server and the userdevice.
 10. The system of claim 9, wherein the first access point namecomprises a generate data access point name that is used as aplaceholder for the user device.
 11. The system of claim 10, wherein theat least one processor is configured to store a mapping betweenidentifiers of user devices, radio access technologies supported by theuser devices, and corresponding access point names, wherein thedetermining of the second access point name is based on a uniqueidentifier of the user device that indicates the capability of the userdevice.
 12. The system of claim 9, wherein the at least one processor isconfigured to receiving, from the user device, a request forestablishing the data session, wherein the determining of the secondaccess point name is based on an access technology over which therequest is received.
 13. The system of claim 9, wherein the at least oneprocessor is configured to determine the second access point name basedon load balancing across different access technologies in the network ora device family to which the user device belongs.
 14. The system ofclaim 9, wherein the capability of the user device is indicated based ona unique identifier of the user device, and wherein the uniqueidentifier comprises an International Mobile Equipment Identity.
 15. Thesystem of claim 9, wherein the at least one processor is configured toselect the second gateway server based on: transmitting a domain nameserver query using the second access point name, wherein the domain nameserver query comprises part of a unique identifier of the user devicethat identifies a model of a revision of the user device; and receivingan address of the second gateway server in response to the domain nameserver query.
 16. A non-transitory computer readable storage mediumstoring computer readable code, the computer readable code, whenexecuted by a processor, causing the processor to implement a methodthat comprises: assigning a first access point name to a user device;determining, based on a capability of the user device, a second accesspoint name that is different from the first access point name; selectinga packet gateway server in a cellular wireless communications networkcorresponding to the capability of the user device using the secondaccess point name; and establishing a data session between the packetgateway server and the user device.
 17. The non-transitory computerreadable storage medium of claim 16, wherein the first access point namecorresponds to a Long-Term Evaluation (LTE) radio access technology,wherein the packet gateway server is associated a Fifth-Generation (5G)radio access technology.
 18. The non-transitory computer readablestorage medium of claim 16, wherein the capability of the user device isindicated based on a unique identifier of the user device, and whereinthe unique identifier comprises an International Mobile EquipmentIdentity.
 19. The non-transitory computer readable storage medium ofclaim 16, wherein the selecting of the packet gateway server comprises:transmitting a domain name server query using the second access pointname; and receiving an address of the packet gateway server in responseto the domain name server query.
 20. The non-transitory computerreadable storage medium of claim 19, wherein the domain name serverquery comprises part of a unique identifier of the user device thatidentifies a model of a revision of the user device.